package suanfa;

import java.util.Scanner;

/**
 * @Author Stringzhua
 * @Date 2024/2/2 18:43
 * description:顺序查找
 * 二分查找[二分法]
 * 案例演示:
 * 1.有一个数列:白眉鹰王、金毛狮王、紫衫龙王、青翼蝠王猜数游戏:
 * 从键盘中任意输入一个名称，判断数列中是否包含此名称[顺序查找]
 * 要求: 如果找到了，就提示找到，并给出下标值。
 * 2.请对一个有序数组进行二分查找{1,8,10,89,1000,1234},
 * 输入一个数看看该数组是否存在此数,并且求出下标,如果没有就提示”没有这个数”。
 */
public class SeqSearch {
    public static void main(String[] args) {
        //定义字符串数组
        String[] names = {"白眉鹰王", "金毛狮王", "紫衫龙王", "青翼蝠王"};
        Scanner myScanner = new Scanner(System.in);

        System.out.println("请输入名字:");
        String findName = myScanner.next();
        //遍历数组,逐一比较,如果有,则提示信息,并退出
        //这里老师给大家一个编程思想
        int index = -1;
        for (int i = 0; i < names.length; i++) {
            //字符串比较equals
            if (findName.equals(names[i])) {
                System.out.println("恭喜你找到" + findName);
                System.out.println("下标为=" + i);
                //把i保存到index
                index = i;
                break;//退出
            }
        }
        if(index==-1){
            System.out.println("抱歉,没有找到~");
        }
    }
}
